Checking Mergeable Priority Queues
نویسندگان
چکیده
We present an eecient algorithm which can check the answers given by the fundamental abstract data types priority queues and mergeable priority queues. This is the rst linear-time checker for mergeable priority queues. These abstract data types are widely used in routing, scheduling, simulation, computational geometry and many other algorithmic domains. We have implemented our answer checker and have performed experiments comparing the speed of our checker to recently benchmarked priority queue and mergeable priority queue implementations , and our checker is substantially faster than the best of these implementations.
منابع مشابه
A General Technique for Implementation of Efficient Priority Queues
This paper presents a very general technique for the implementation of mergeable priority queues. The amortized running time is O(log n) for DeleteMin and Delete, and (1) for all other standard operations. In particular, the operation DecreaseKey runs in amortized constant time. The worst-case running time is O(log n) or better for all operations. Several examples of mergeable priority queues a...
متن کاملBiased Leftist Trees and Modi ed Skip Lists
We propose the weight biased leftist tree as an alternative to traditional leftist trees CRAN for the representation of mergeable priority queues A modi ed version of skip lists PUGH that uses xed size nodes is also proposed Experimental results show our modi ed skip list structure is faster than the original skip list structure for the representation of dictionaries Experimental results compar...
متن کاملStreaming Complexity of Checking Priority Queues
This work is in the line of designing efficient checkers for testing the reliability of some massive data structures. Given a sequential access to the insert/extract operations on such a structure, one would like to decide, a posteriori only, if it corresponds to the evolution of a reliable structure. In a context of massive data, one would like to minimize both the amount of reliable memory of...
متن کاملFormal Correctness of Result Checking for Priority Queues
We formally prove the correctness of the time super-e cient result checker for priority queues, which is implemented in LEDA [17]. A priority queue is a data structure that supports insertion, deletion and retrieval of the minimal element, relative to some order. A result checker for priority queues is a data structure that monitors the input and output of the priority queue. Whenever the user ...
متن کاملChecking Linearizability of Concurrent Priority Queues
Efficient implementations of concurrent objects such as atomic collections are essential to modern computing. Programming such objects is error prone: in minimizing the synchronization overhead between concurrent object invocations, one risks the conformance to sequential specifications – or in formal terms, one risks violating linearizability. Unfortunately, verifying linearizability is undeci...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1994